If a software error corrupts a database, or if erroneous data updates the database, a database administrator may restore the database to a previous uncorrupted state that does not include the corrupted or erroneous data. A backup application executes a backup operation either occasionally or continuously to enable this restoration, storing a copy of each desired database state (the values of its data and these values' embedding in the database's data structures) within dedicated backup files. When the database administrator decides to return the database to a previous state, the database administrator specifies the desired previous state by identifying a desired point in time when the database was in this state, and instructs the backup application to execute a restore operation to restore a copy of the corresponding backup files for that state to the database. An additional copy that is made of the copy of the backup files and stored separately from the backup files may be referred to as a clone copy of the backup files.
A virtual machine is a software implementation of a computer that executes programs like a physical machine. A system virtual machine provides a complete system platform that supports the execution of a complete operating system, and usually emulates an existing architecture. Multiple instances of virtual machines lead to more efficient use of computing resources, both in terms of energy consumption and cost effectiveness, known as hardware virtualization, the key to a cloud computing environment. Similar to other databases, backup copies are made of virtual machine databases to enable a restoration of the virtual machine database in the event of corruption or an erroneous update to the virtual machine database.